home *** CD-ROM | disk | FTP | other *** search
/ Kellogg's Amérique / Kellogg's Amérique / amazonie_en_danger.swf / scripts / amerique / AmazonieEnDanger.as
Text File  |  2020-08-04  |  7KB  |  217 lines

  1. package amerique
  2. {
  3.    import flash.display.MovieClip;
  4.    import flash.events.Event;
  5.    import flash.events.MouseEvent;
  6.    import flash.events.TimerEvent;
  7.    import flash.text.TextField;
  8.    import flash.utils.getQualifiedClassName;
  9.    import jeux.Chrono;
  10.    import jeux.Jeu;
  11.    import jeux.Score;
  12.    
  13.    public class AmazonieEnDanger extends Jeu
  14.    {
  15.        
  16.       
  17.       public var page_accueil:MovieClip;
  18.       
  19.       const DUREE_PARTIE:Number = 30;
  20.       
  21.       public var titre:MovieClip;
  22.       
  23.       private var temps:Number;
  24.       
  25.       public var fond:MovieClip;
  26.       
  27.       private var gagne:Boolean;
  28.       
  29.       public var chargement:MovieClip;
  30.       
  31.       public var bug:TextField;
  32.       
  33.       const NOMBRE_OBJETS:Number = 11;
  34.       
  35.       public var score:Score;
  36.       
  37.       public var page_lesavaistu:MovieClip;
  38.       
  39.       public var chrono:Chrono;
  40.       
  41.       private var _score:Number;
  42.       
  43.       public var message_mc:MovieClip;
  44.       
  45.       public var page_resultat:MovieClip;
  46.       
  47.       const COEF_SCORE:Number = 0.25;
  48.       
  49.       public var page_jeu:MovieClip;
  50.       
  51.       public function AmazonieEnDanger()
  52.       {
  53.          var _loc1_:Number = NaN;
  54.          super();
  55.          pages = [chargement,page_accueil,page_lesavaistu,page_jeu,page_resultat];
  56.          hide_all_but(page_lesavaistu);
  57.          page_accueil.btn_lesavaistu.addEventListener(MouseEvent.CLICK,clic_bouton);
  58.          page_accueil.btn_jouer.addEventListener(MouseEvent.CLICK,clic_bouton);
  59.          page_lesavaistu.btn_accueil.addEventListener(MouseEvent.CLICK,clic_bouton);
  60.          page_lesavaistu.btn_jouer.addEventListener(MouseEvent.CLICK,clic_bouton);
  61.          page_resultat.btn_jouer.addEventListener(MouseEvent.CLICK,clic_bouton);
  62.          message_mc.visible = false;
  63.          score.visible = false;
  64.          chrono.visible = false;
  65.          _loc1_ = 1;
  66.          while(_loc1_ <= NOMBRE_OBJETS)
  67.          {
  68.             page_jeu["bouton_" + _loc1_].alpha = 0;
  69.             _loc1_++;
  70.          }
  71.       }
  72.       
  73.       override public function toString() : String
  74.       {
  75.          return "Jeu " + getQualifiedClassName(this);
  76.       }
  77.       
  78.       override public function quitter() : *
  79.       {
  80.          removeEventListener(Event.ENTER_FRAME,actualiser);
  81.          chrono.arreter();
  82.       }
  83.       
  84.       override public function jouer() : *
  85.       {
  86.          var _loc1_:Number = NaN;
  87.          hide_all_but(page_jeu);
  88.          fond.visible = false;
  89.          score.score = 0;
  90.          score.visible = true;
  91.          temps = 0;
  92.          _score = 0;
  93.          gagne = false;
  94.          chrono.temps = DUREE_PARTIE;
  95.          chrono.fonction_fin = finjeu;
  96.          chrono.lancer();
  97.          chrono.visible = true;
  98.          addEventListener(Event.ENTER_FRAME,actualiser);
  99.          _loc1_ = 1;
  100.          while(_loc1_ <= NOMBRE_OBJETS)
  101.          {
  102.             page_jeu["zone_" + _loc1_].gotoAndStop(1);
  103.             page_jeu["intru_" + _loc1_].visible = false;
  104.             _loc1_++;
  105.          }
  106.       }
  107.       
  108.       private function verifier_victoire() : Boolean
  109.       {
  110.          var _loc1_:Number = NaN;
  111.          _loc1_ = 1;
  112.          while(_loc1_ <= NOMBRE_OBJETS)
  113.          {
  114.             _loc1_++;
  115.          }
  116.          return false;
  117.       }
  118.       
  119.       private function bouton_obstacle(param1:MouseEvent) : void
  120.       {
  121.          var _loc2_:Number = NaN;
  122.          _loc2_ = param1.currentTarget.name.substr(param1.currentTarget.name.indexOf("_") + 1,param1.currentTarget.name.length - param1.currentTarget.name.indexOf("_") + 1);
  123.          if(page_jeu["zone_" + _loc2_].currentFrame == 10)
  124.          {
  125.             _score += 1 * COEF_SCORE;
  126.             score.score = Math.floor(_score);
  127.             page_jeu["zone_" + _loc2_].play();
  128.             page_jeu["bouton_" + _loc2_].removeEventListener(MouseEvent.MOUSE_DOWN,bouton_obstacle);
  129.          }
  130.          if(verifier_victoire())
  131.          {
  132.             finjeu();
  133.          }
  134.       }
  135.       
  136.       private function bouton_intru(param1:MouseEvent) : void
  137.       {
  138.          param1.currentTarget.gotoAndPlay("fin");
  139.          param1.currentTarget.removeEventListener(MouseEvent.MOUSE_DOWN,bouton_intru);
  140.          param1.currentTarget.mouseEnabled = false;
  141.          _score += 1 * COEF_SCORE;
  142.          score.score = Math.floor(_score);
  143.       }
  144.       
  145.       public function finjeu(param1:TimerEvent = null) : void
  146.       {
  147.          hide_all_but(page_resultat);
  148.          fond.visible = true;
  149.          quitter();
  150.          score.visible = true;
  151.          page_resultat.bulle_gagne.visible = false;
  152.          page_resultat.bulle_gagne1.visible = false;
  153.          page_resultat.bulle_perdu.visible = false;
  154.          if(score.score >= 10)
  155.          {
  156.             page_resultat.bulle_gagne.visible = true;
  157.             page_resultat.bulle_gagne.points.text = score.score;
  158.             jouer_son_victoire();
  159.          }
  160.          else if(score.score > 4)
  161.          {
  162.             page_resultat.bulle_gagne1.visible = true;
  163.             page_resultat.bulle_gagne1.points.text = score.score;
  164.             jouer_son_victoire();
  165.          }
  166.          else
  167.          {
  168.             page_resultat.bulle_perdu.visible = true;
  169.             if(score.score < 2)
  170.             {
  171.                page_resultat.bulle_perdu.textePoints.text = "point,";
  172.             }
  173.             else
  174.             {
  175.                page_resultat.bulle_perdu.textePoints.text = "points,";
  176.             }
  177.             page_resultat.bulle_perdu.points.text = score.score;
  178.             jouer_son_defaite();
  179.          }
  180.          if(fin != null)
  181.          {
  182.             fin(score.score);
  183.          }
  184.       }
  185.       
  186.       private function ajouter_obstacles() : void
  187.       {
  188.          var _loc1_:Number = NaN;
  189.          if(temps % 10 == 0)
  190.          {
  191.             _loc1_ = Math.floor(Math.random() * NOMBRE_OBJETS + 1);
  192.             if(Math.random() * 100 > 75 || page_jeu["intru_" + _loc1_].visible && page_jeu["intru_" + _loc1_].currentFrame <= 10)
  193.             {
  194.                if(page_jeu["zone_" + _loc1_].currentFrame == 1)
  195.                {
  196.                   page_jeu["zone_" + _loc1_].play();
  197.                   page_jeu["bouton_" + _loc1_].addEventListener(MouseEvent.MOUSE_DOWN,bouton_obstacle);
  198.                }
  199.             }
  200.             else
  201.             {
  202.                page_jeu["intru_" + _loc1_].visible = true;
  203.                page_jeu["intru_" + _loc1_].gotoAndPlay(1);
  204.                page_jeu["intru_" + _loc1_].addEventListener(MouseEvent.MOUSE_DOWN,bouton_intru);
  205.                page_jeu["intru_" + _loc1_].mouseEnabled = true;
  206.             }
  207.          }
  208.       }
  209.       
  210.       private function actualiser(param1:Event) : void
  211.       {
  212.          ajouter_obstacles();
  213.          ++temps;
  214.       }
  215.    }
  216. }
  217.